package com.ctshk.rpc.order.tour.req.custom;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 保險收款req
 * </p>
 *
 * @author 叶冠峰
 * @since 2021-03-05
 */
@Data
@ApiModel(value="保險收款req", description="保險收款req")
public class CustomOrderCollectInsuranceReq implements Serializable {

    @ApiModelProperty(value = "保险ID")
    private Long id;

    @NotNull(message = "保单ID不能为空")
    @ApiModelProperty(value = "保单ID",required = true)
    private Long insuranceId;

    @NotNull(message = "订单ID不能为空")
    @ApiModelProperty(value = "订单ID",required = true)
    private Long orderId;

    @ApiModelProperty(value = "用户ID")
    private Long userId;

    @NotNull(message = "付款方式ID不能为空")
    @ApiModelProperty(value = "付款方式ID",required = true)
    private Long payMethodId;

    @NotNull(message = "付款方式不能为空")
    @ApiModelProperty(value = "付款方式",required = true)
    private String payMethod;

    @NotNull(message = "付款方不能为空")
    @ApiModelProperty(value = "付款方",required = true)
    private String payer;

    @NotNull(message = "付款方ID不能为空")
    @ApiModelProperty(value = "付款方ID",required = true)
    private Long payerId;

    @ApiModelProperty(value = "备注")
    private String remark;

    @NotNull(message = "是否pos机不能为空")
    @ApiModelProperty(value = "是否pos机。0 否 1 是",required = true)
    private Integer isPos;

    @ApiModelProperty(value = "货币类型")
    private String currencyType;

    @ApiModelProperty(value = "货币类型主数据ID")
    private Long currencyTypeId;

    @NotNull(message = "添加项不能为空")
    @ApiModelProperty(value = "添加项",required = true)
    private List<CustomOrderCollectionAddItemReq> items;

}
